//
//  ComTableView.m
//  TheRoadAD
//
//  Created by baixue on 16/8/15.
//  Copyright © 2016年 baixue. All rights reserved.
//

#import "ComTableView.h"
#import "PersonalCell.h"
#import "UserModel.h"
static NSString *const PERSONAL = @"PersonalCell";

@implementation ComTableView

-(id)initWithFrame:(CGRect)frame{
    if (self = [super initWithFrame:frame]) {
        
        [self setUpTableViewWithHeight:frame.size.height];
        [self createModelCount:9];
        
    }
    return self;
}

////存储数据源
//- (NSMutableArray *)dataArray{
//    if (!_dataArray) {
//        _dataArray = [NSMutableArray array];
//    }
//    return _dataArray;
//}

//模拟假数据
-(void)createModelCount:(NSInteger)count{
    if (!_dataArray) {
        _dataArray = [NSMutableArray new];
    }
    NSArray *headImgArr =  @[
                             @"icon0.jpg",
                             @"icon1.jpg",
                             @"icon2.jpg",
                             @"icon3.jpg",
                             @"icon4.jpg",
                             @"icon0.jpg",
                             @"icon1.jpg",
                             @"icon2.jpg",
                             @"icon3.jpg"
                          ];
    
    NSArray *contentArr = @[
                            @"内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1",
                           @"",
                           @"内容",
                           @"内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2",
                           @"",
                           @"内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4",
                            @"内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2",
                            @"",
                            @"内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4内容4"
                            ];
    NSArray *timeArr = @[@"2016.8.11  10:30",
                         @"2016.8.11  10:31",
                         @"2016.8.11  10:32",
                         @"2016.8.11  10:33",
                         @"2016.8.11  10:34",
                         @"2016.8.11  10:35",
                         @"2016.8.11  10:36",
                         @"2016.8.11  10:37",
                         @"2016.8.11  10:38"
                        ];
    
    NSArray *userNameArr = @[@"用户名1",
                          @"用户名2",
                          @"用户名3",
                          @"用户名4",
                          @"用户名5",
                          @"用户名6",
                          @"用户名7",
                          @"用户名8",
                          @"用户名9"
                          ];
    
  
 
    
    
    for (int i = 0; i < count; i++) {
        
//        int nameRandomIndex = arc4random_uniform(5);
        
        UserModel *model = [[UserModel alloc] init];
        
        model.content = contentArr[i];
        
        model.headImage = headImgArr[i];
        model.timer = timeArr[i];
        model.userName = userNameArr[i];
        model.likeImage = headImgArr[arc4random_uniform(9)];
        
        // 模拟“有或者无图片”
        int random = arc4random_uniform(1);
        if (random <= 8) {
            NSMutableArray *temp = [NSMutableArray new];
            
            int randomImagesCount = arc4random_uniform(9);
            for (int i = 0; i < randomImagesCount; i++) {
                int randomIndex = arc4random_uniform(9);
                NSString *text = headImgArr[randomIndex];
                [temp addObject:text];
            }
            NSMutableArray *aa = [NSMutableArray array];
            for (int i = 0; i < randomImagesCount; i++) {
                int randomIndex = arc4random_uniform(9);
                NSString *text = headImgArr[randomIndex];
                [aa addObject:text];
            }
            
            model.imageArray = [temp copy];
            model.likeImage = [aa copy];
        }
        
        [self.dataArray addObject:model];
    }


}

//创建tableView
-(void)setUpTableViewWithHeight:(CGFloat)height{
    _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, Screen_Width, height) style:UITableViewStyleGrouped];
    _tableView.delegate = self;
    _tableView.dataSource = self;
    _tableView.bounces = NO;
    [self addSubview:_tableView];
    _tableView.showsVerticalScrollIndicator = NO;
    _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
    
    //注册
    [_tableView registerNib:[UINib nibWithNibName:@"PersonalCell" bundle:nil] forCellReuseIdentifier:PERSONAL];
    

}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    PersonalCell *cell = [tableView dequeueReusableCellWithIdentifier:PERSONAL];
   
    
    cell.model = self.dataArray[indexPath.section];
    return cell;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return 1;
}

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return self.dataArray.count;
}
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{
    return 0.001;
}
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
    if (section == 0) {
        return 0.001;
    }
    return 8;
}
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
   
    UserModel  *usermodel = self.dataArray[indexPath.section];
    
    return [self.tableView cellHeightForIndexPath:indexPath model:usermodel keyPath:@"model" cellClass:[PersonalCell class] contentViewWidth:Screen_Width];
  
    
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    _didSelect(indexPath.section);
}

@end
